package nancal.mp.db.mongo.table

import java.io.*
import nbcp.base.db.*
import nbcp.base.comm.*
import nbcp.base.extend.*
import nbcp.base.enums.*
import nbcp.base.utils.*
import nbcp.myoql.db.*
import nbcp.myoql.db.comm.*
import nbcp.myoql.db.enums.*
import nbcp.myoql.db.mongo.*
import nbcp.myoql.db.mongo.base.*
import nbcp.myoql.db.mongo.component.*
import org.slf4j.LoggerFactory
import org.springframework.stereotype.*



class ShopActivityRuleDataMeta(private val parentPropertyName: String): MongoColumnName() {
    constructor(value: MongoColumnName) : this(value.toString()) {}
    val memberLevel = mongoColumnJoin(this.parentPropertyName, "memberLevel")
    val clients = mongoColumnJoin(this.parentPropertyName, "clients")
    val categoryPath = IdCodeNameMeta(mongoColumnJoin(this.parentPropertyName, "categoryPath"))
    val products = IdNameMeta(mongoColumnJoin(this.parentPropertyName, "products"))
    val cities = CodeNameMeta(mongoColumnJoin(this.parentPropertyName, "cities"))
    val payTypes = mongoColumnJoin(this.parentPropertyName, "payTypes")
    val favorite = mongoColumnJoin(this.parentPropertyName, "favorite")
    val startAt = mongoColumnJoin(this.parentPropertyName, "startAt")
    val endAt = mongoColumnJoin(this.parentPropertyName, "endAt")
    val platformNoCommission = mongoColumnJoin(this.parentPropertyName, "platformNoCommission")
    val proxyNoCommission = mongoColumnJoin(this.parentPropertyName, "proxyNoCommission")
    val sallerNoCommission = mongoColumnJoin(this.parentPropertyName, "sallerNoCommission")
    override fun toString(): String {
        return mongoColumnJoin(this.parentPropertyName).toString()
    }
}

